perm filename PAC.FAI[RST,LCS] blob
sn#164503 filedate 1975-06-12 generic text, type T, neo UTF8
00010 ;CALL PAC(PACKED WD., NUM OF BITS PER WD., ARRAY)
00055 ; WILL PACK NEG NUMS. (THUS LEFT BIT ALWAYS IS FOR SIGN.)
00100 ENTRY PAC,UNPAC
00200 PAC: 0 ;CALL PAC(PW,SZ,AR)
00300 HRRZ 4,2(16)
00400 HRRZI 3,44
00500 MOVN 5,@1(16)
00600 ADD 3,5
00700 JUMPL 3,.+5
00800 MOVE 1,@4
00900 LSHC 1,(5)
01000 AOJ 4,
01100 JRST .-5
01200 MOVNS 3
01300 ADD 5,3
01400 JUMPE 5,.+3
01500 MOVE 1,@4
01600 LSHC 1,(5)
01700 MOVEM 2,@0(16)
01800 JRA 16,3(16)
01900 UNPAC: 0 ;CALL UNPAC(PW,SZ,AR)
02000 HRRZ 4,2(16)
02100 MOVE 1,@0(16)
02200 HRRZ 3,@1(16)
02300 HRRM 3,.+10
02400 MOVN 5,3
02500 SUBI 3,44
02600 HRRO 6,3
02700 LSHC 1,(5)
02800 ASH 2,(3)
02900 MOVEM 2,@4
03000 AOJ 4,
03100 ADDI 6,
03200 JUMPLE 6,.-5
03300 ADD 5,6
03400 JUMPE 5,.+5
03500 SUB 3,6
03600 LSHC 1,(5)
03700 ASH 2,(3)
03800 MOVEM 2,@4
03900 JRA 16,3(16)
04000 END